详细介绍如何使用GPU(显卡)跑MATLAB代码

您所在的位置:网站首页 surface pro可以运行matlab 详细介绍如何使用GPU(显卡)跑MATLAB代码

详细介绍如何使用GPU(显卡)跑MATLAB代码

2024-07-17 02:22| 来源: 网络整理| 查看: 265

一、概述

想要在GPU跑MATLAB,首先得查看你的电脑是否支持了。

先来了解一个概念——CUDA:是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。

说白了,就是你用显卡进行深度学习等的运算必须要安装cuda包(你可以了理解为一个软件),用GPU跑MATLAB代码也必须要用到cuda包,每一个显卡只能安装对应版本的cuda包。

二、查看cuda版本并安装

依次打开:控制面板==>NVIDIA控制面板==>帮助==>系统信息==>组件==>NVCUDA.DLL==>产品名称

可以看到我的电脑支持cuda 10.1版本

 此时就需要在你电脑安装对应版本的cuda版本,可以查看往期教程:

tips:如果有深度学习相关的cudnn也建议安装

 全网最详细的深度学习tensorflow-gpu环境配置_惜洛-Jankin的博客-CSDN博客

……

三、确认MATLAB版本与cuda版本对应

安装好之后需要确认MATLAB版本与cuda版本对应才行,比如我的cuda10.1,只能使用MATLAB2019b与2020a

GPU Support by Release- MATLAB & Simulink- MathWorks 中国

四、在MATLAB查看GPU版本

到此你已经安装好了cuda了,MATLAB版本也对,就可以打开MATLAB查看GPU了,若是你没有安装cuda,会提示错误的。

在命令行输入

gpuDevice

正常情况会出现:

五、测试gpu跑代码 

使用gpu跑代码首先需要了解几个函数

gpuArray存储在 GPU 上的数组gather将分布式数组或 gpuArray 传输到本地工作空间gpuDevice查询或选择 GPU 设备arrayfun将函数应用于 GPU 上数组的每个元素

最主要的就是前两个了,在运算时,必须将数组等定义为gpuArray类型,代码才会在gpu运行。

若是想把gpuArray对象转为普通数组,就要用到gateer函数了。

gpuArrary支持的函数:参考列表- MATLAB & Simulink- MathWorks 中国

举例:

G = gpuArray(X) 将数组复制 X到 GPU 并返回一个gpuArray对象。 G就是一个可以在gpu运行的数组

测试速度

输入如下代码在cpu运行并显示时间

tic G=randn(1e4); toc

输入如下代码在gpu运行并显示时间

tic G=randn(1e4,'gpuArray'); toc

 还是快了不少。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3